use clap::Parser;

use super::{base64::Base64Command, CsvOpts, GenPassOpts};

#[derive(Debug, Parser)]
#[command(name = "rcli", version, author, about, long_about = None)]
pub struct Opts {
    #[command(subcommand)]
    pub cmd: SubCommand,
}

#[derive(Debug, Parser)]
pub enum SubCommand {
    #[command(name = "csv", about = "Convert CSV to ...")]
    Csv(CsvOpts),

    #[command(name = "genpass", about = "Generate random passwords ...")]
    GenPass(GenPassOpts),

    #[command(subcommand)]
    Base64(Base64Command),
}
